#ifndef ORDINARY_H
#define ORDINARY_H

#include <algorithm/shared/utils/Para.h>
#include <utils/ParaUtils.h>

#include <boost/describe.hpp>

#include <memory>

namespace solar
{
    class Geometry;
    class Ordinary : public Para
    {
        public:
            ~Ordinary() override = default;
            Ordinary();

#include <utils/class_name.inc>

        private:
            std::shared_ptr<Geometry> geometry_;
            BOOST_DESCRIBE_CLASS(Ordinary, (Para), (), (), (geometry_))
    };

} // namespace solar
#define CURRENT_CLASS_NAME Ordinary
#include <utils/class_describe_header.inc>
SOLAR_DESCRIBE_CLASS(Ordinary, (Para), (), (), (geometry_))
#endif
